package com.SuanFa.lanqiao;

public class a7 {
    public static void main(String[] args) {
        int depth = 1000; // 定义连分数的深度
        double result = calculateContinuedFraction(depth);
        double pi = 4 / result;
        System.out.printf("圆周率的近似值为: %.4f%n", pi);
    }

    private static double calculateContinuedFraction(int depth) {
        double temp = 1.0;
        for (int i = depth*2-1; i >=1 ; i-=2) {
              double numerator = i*i;
              temp = 2 + numerator/temp;
        }
        return 1+1/temp;
    }

//    private static double calculateContinuedFraction(int depth) {
//        double fraction = 1.0; // 从最内层开始
//        for (int i = depth * 2 - 1; i >= 1; i -= 2) { // i 取奇数
//            double numerator = i * i; // 分子为 i^2（奇数的平方）
//            fraction = 2 + numerator / fraction;
//        }
//        return 1 + 1 / fraction;
//    }

//        double x = 111;
//        for (int n = 10000; n >= 0; n--) {
//            int i = 2 * n + 1;
//            x = 2 + (i * i / x);
//        }
//        System.out.printf(String.format("%.4f",x));
//    }

}
